#ifndef MEMENTO_H
#define MEMENTO_H

#include "scorekeeper.h"
#include <QStack>
#include <QList>
#include "playericon.h"

class Memento
{
public:
    Memento();
    void saveState(ScoreKeeper* keeper, QList<PlayerIcon*>* player);
    void revertState(ScoreKeeper* currentKeeper, QList<PlayerIcon*>* player);
    ScoreKeeper* getLastKeeper();
    QList<PlayerIcon*>* getLastPlayers();

private:
    QStack<ScoreKeeper*> *keepers;
    QStack< QList<PlayerIcon*>* > *players;
};

#endif // MEMENTO_H
